/**
 * 订单相关API
 */

import request from "@/utils/request.js";

export default {
//*************************************************************  购物车  **********************************************//
  /**
   * 获取订单列表
   * @param params
   */
   getOrderList(params) {
    return request(`/api/member/order/order`, params, "GET");
  },

  /**
   * 取消订单
   * @param orderSn 订单编号
   * @param reason   取消原因
   */
  cancelOrder(data) {
    return request(`/api/member/order/order/cancel`, data, "POST");
  },

  /**
   * 获取订单详情
   * @param orderSn 订单编号
   */
   getOrderDetail(orderSn) {
    return request(`/api/member/order/order/detail/${orderSn}`, {}, "GET");
  },


  /**
   * 根据交易编号或订单编号查询收银台数据
   * @param params
   */
  getCashierData(params) {
    return request(`/api/member/cashier/tradeDetail`, params, "POST");
  },

  /**
   * 发起支付
   * @param paymentMethod
   * @param paymentClient
   * @param params
   * @returns {*|*}
   */
  raisePay(params) {
    return request(`/api/member/cashier/pay`, params, "POST");
  },


  //*************************************************  物流
  /**
   * 查询物流
   * @param orderSn

   */
  getExpress(orderSn) {
    return request(`/api/member/order/order/getTraces/${orderSn}`, {}, "GET");
  },

  // 查看包裹列表
   getPackage(orderSn) {
     return request(`/api/member/order/order/getPackage/${orderSn}`, {}, "GET");
  },

  /**
   * 确认收货
   * @param orderSn 订单编号
   */
  confirmReceipt(orderSn) {
    return request(`/api/member/order/order/${orderSn}/receiving`, {}, "POST");
  },

  /**
   * 获取购物车列表
   * @param show_type 要显示的类型 all：全部 checked：已选中的
   */
  getCartsList(params) {
    return request(`/api/member/trade/carts/list`, params, "GET");
  },

  /**
   * 获取购物车总数
   * @param show_type 要显示的类型 all：全部 checked：已选中的
   */
  getCartNum() {
    return request(`/api/member/trade/carts/count`, {}, "GET");
  },
  /**
   * 添加货品到购物车
   */
  addToCart(data) {
    return request(`/api/member/trade/carts/add`, data, "POST");
  },
  /**
   * 删除购物车商品
   * @param skuIds
   */
  removeCartSkuItem(params) {
    return request(`/api/member/trade/carts/remove`, params, "POST");
  },
  /**
   * 更新购物车货品选中状态
   */
  updateCartChecked(params) {
    return request(`/api/member/trade/carts/checked`, params, "POST");
  },
  /**
   * 设置全部货品为选中或不选中
   */
  checkCartAll(params) {
    return request(`/api/member/trade/carts/checkedAll`, params, "POST");
  },
  /**
   * 更新购物车商品数量
   */
  updateCartNum(params) {
    return request(`/api/member/trade/carts/editQuantity`, params, "POST");
  },


//*************************************************************  售后  **********************************************//

  /**
   * 获取取消原因
   */
  getClearReason() {
    return request(`/api/member/order/afterSale/afterSaleReason/CANCEL`, {}, "GET");
  }
}



/**
 * 选择发票
 * @param params
 */
 export function getReceipt(params) {
  return http.request({
    url: "/trade/carts/select/receipt",
    method: Method.GET,
    needToken: true,
    params,
  });
}

/**
 * 选择发票
 * @param id
 */
export function getReceiptDetail(id) {
  return http.request({
    url: `/trade/receipt/${id}`,
    method: Method.GET,
    needToken: true,
  });
}

/**
 * 选择配送方式
 * @param params
 */
export function selectedShipMethod(params) {
  return http.request({
    url: "/trade/carts/shippingMethod",
    method: Method.GET,
    needToken: true,
    params,
  });
}











/**
 * 获取当前拼团订单的拼团分享信息
 * @param {*} parentOrderSn
 * @param {*} skuId
 */
export function getPinTuanShare(parentOrderSn,skuId) {
  return http.request({
    url: `promotion/pintuan/share`,
    method: Method.GET,
    needToken: true,
    params:{parentOrderSn,skuId}
  });
}

